package com.briup.oagg.model.service;

import com.briup.oagg.model.bean.basic.ClusterTrainResult;
import com.baomidou.mybatisplus.extension.service.IService;
import com.briup.oagg.model.bean.op.TaskResult;

import java.util.List;

/**
 * 聚类训练评估结果业务逻辑接口
 *
 * @author briup
 */
public interface IClusterTrainResultService extends IService<ClusterTrainResult> {
    /**
     * 根据训练编号查询对应的训练评估结果
     * @param trainId 训练编号
     * @return 模型训练评估结果
     */
    ClusterTrainResult findByTrainId(String trainId);

    /**
     * 新增训练评估结果
     * @param result  MQ中接收到的评估结果
     */
    void addTrainResult(TaskResult result);

    /**
     * 根据模型分组查询评估结果，以算法进行分组
     * @param modelId 模型编号
     * @return 训练结果集合
     */
    List<List<ClusterTrainResult>> findByModelIdGroupByAlgorithm(String modelId);
}
